﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DAO;

public partial class BusquedaEjemplar : System.Web.UI.Page
{
    DAO.RestauracionInterface restauracionint;
    static List<Entidad.EjemplarBusquedaQueryEnt> ejemplares;
    static int codEjemplar;
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            CargarGrillaEjemplares();
        }
    }

    protected void CargarGrillaEjemplares()
    {
        RestauracionInterface iRestauracion = new BusquedaQuery();
        ejemplares = iRestauracion.BuscarEjemplares(null);
        grvEjemplares.DataSource = ejemplares;
        grvEjemplares.DataKeyNames = new String[] { "Codigo" };
        grvEjemplares.DataBind();
    }
    protected void btnBuscar_Click(object sender, EventArgs e)
    {
        RestauracionInterface iRestauracion = new BusquedaQuery();
        List<String> filtros = new List<String>();
        if (!String.IsNullOrEmpty(txtCodigo.Text))
        {
            filtros.Add("Codigo LIKE '%" + txtCodigo.Text + "%'");
        }
        if (!String.IsNullOrEmpty(txtISBN.Text))
        {
            filtros.Add("ISBN LIKE '%" + txtISBN.Text + "%'");
        }
        if (!String.IsNullOrEmpty(txtTitulo.Text))
        {
            filtros.Add("Titulo LIKE '%" + txtTitulo.Text + "%'");
        }
        ejemplares = iRestauracion.BuscarEjemplares(filtros);
        grvEjemplares.DataSource = ejemplares;
        grvEjemplares.DataKeyNames = new String[] { "Codigo" };
        grvEjemplares.DataBind();
    }

    protected void grvEjemplares_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView nueva = (GridView)sender;
        nueva.PageIndex = e.NewPageIndex;
        grvEjemplares.DataSource = ejemplares;
        grvEjemplares.DataKeyNames = new String[] { "Codigo" };
        grvEjemplares.DataBind();
        restauraciones.Visible = false;
    }


    protected void grvEjemplares_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        RestauracionInterface iRestauracion = new RestauracionDAO();
        object dataKeyValue = grvEjemplares.DataKeys[int.Parse(e.CommandArgument.ToString())].Value;
        codEjemplar = (int)dataKeyValue;
        grvRestauraciones.DataSource = iRestauracion.ObtenerRestauraciones(codEjemplar);
        grvRestauraciones.DataBind();
        restauraciones.Visible = true;
    }
    protected void btnNuevaRestauracion_Click(object sender, EventArgs e)
    {
        Response.Redirect("Restauracion.aspx?ejemplar=" + codEjemplar + "&numero=nueva");
    }
}